const htmlWebpackPlugin = require('html-webpack-plugin');
const cleanWebpackPlugin = require('clean-webpack-plugin');
const uglifyjsWebpackPlugin = require('uglifyjs-webpack-plugin');

var path = require('path');


function resolve( ...dirs ){
	if( dirs.length == 1 ){
		return path.resolve(__dirname,dirs[0]);
	}else{
		return dirs.map(function( item ){
			return path.resolve(__dirname, item );
		});
	}
}

module.exports = {
	// 打包文件的入口文件
	// context : , 可以指定脚本运行的上下文
	entry: {
		main : resolve('5/src/script/main.js'), // 可以是数组也可以是字符串
		a : resolve('5/src/script/a.js'),
		b : resolve('5/src/script/b.js'),
		c : resolve('5/src/script/c.js'),
	}, 
	output : {
		path : resolve('5/dist'), // 指定 打包后的文件目录
		filename : 'js/[name]-[hash:8].js', // 打包后的文件名
		// publicPath : '192.168.31.43:8080' // 上线根目录
	},
	plugins : [
		new cleanWebpackPlugin([resolve('5/dist')]),
		// new uglifyjsWebpackPlugin(),
		new htmlWebpackPlugin({
			template : resolve('5/index_2.html'), // 模板
			filename : 'index_2.html', // 默认为，模本文件名
			inject : 'head', // 指定 js 插入的位置，默认 body
			title : '我是index页面',
			timestamp : Date.now(),
			chunks : ['main']
			// minify : { // 压缩模板
			// 	removeComments : true, // 删除注释
			// 	collapseWhitespace : true, // 删除空格
			// }
		}),
		new htmlWebpackPlugin({
			template : resolve('5/index_2.html'), // 模板
			filename : 'html/a.html', // 默认为，模本文件名
			inject : 'head', // 指定 js 插入的位置，默认 body
			title : '我是 a 页面',
			timestamp : Date.now(),
			chunks : ['main','a']

			// minify : { // 压缩模板
			// 	removeComments : true, // 删除注释
			// 	collapseWhitespace : true, // 删除空格
			// }
		}),
		new htmlWebpackPlugin({
			template : resolve('5/index_2.html'), // 模板
			filename : 'html/b.html', // 默认为，模本文件名
			inject : 'head', // 指定 js 插入的位置，默认 body
			title : '我是 b 页面',
			timestamp : Date.now(),
			chunks : ['main','b']
			// minify : { // 压缩模板
			// 	removeComments : true, // 删除注释
			// 	collapseWhitespace : true, // 删除空格
			// }
		}),
		new htmlWebpackPlugin({
			template : resolve('5/index_2.html'), // 模板
			filename : 'html/c.html', // 默认为，模本文件名
			inject : 'head', // 指定 js 插入的位置，默认 body
			title : '我是 c 页面',
			timestamp : Date.now(),
			chunks : ['c']
			// minify : { // 压缩模板
			// 	removeComments : true, // 删除注释
			// 	collapseWhitespace : true, // 删除空格
			// }
		}),
	],
};